<?php
/**
 * Description of BaseSpecification
 *
 * @author welcome
 */
abstract class BaseSpecification implements ISpecification {
    protected $field;
    public  function and_(ISpecification $andSpecification)
    {
        return new AndSpecification($this, $andSpecification);
    }
    public  function or_(ISpecification $orSpecification)
    {
        return new OrSpecification($this, $orSpecification);
    }
    public abstract function isSatistifiedBy($expenses = array());
 
}
